#include <REGX52.H>
#include "Timer0.h"
#include "Key.h"   
#include <INTRINS.H>		

//void Timer0_init(){
//	
//	
//	//TMOD=0X01; 会覆盖另外一个寄存器的值
//	// 把TMOD的低四位清零, 高四位保持不变
//	TMOD=TMOD&0xf0;
//	// 把TMOD的最低位置1, 高四位保持不变
//	TMOD=TMOD|0x01;
//	TF0=0;
//	TR0=1;
//	// 十六进制取高位和低位，16 * 16
//	TH0=64535 / 256;
//	TL0 = 64535 % 256;
//	
//	ET0=1;
//	EA=1;
//	PT0=0;
//}

unsigned char KeyNum = 0;
unsigned char LedMode = 0;

void Timer0_Routine() interrupt 1{
	// 保留状态,数值不丢失
	static unsigned int T0Count = 0;
	//P2_0=0;
	TH0=0xFC;
	TL0=0x18;
	++T0Count;
	if(T0Count >= 500){
		T0Count = 0;
		if(LedMode == 0){
			P2 = _crol_(P2, 1);
		} else if(LedMode == 1){
			P2 = _cror_(P2, 1);
		}
		
	}
}

void main(){
	P2 = 0xFE;
	Timer0Init();

	while(1){
		KeyNum = Key();
		if(KeyNum){
			if(KeyNum == 1){
				++LedMode;
				if(LedMode >= 2){
					LedMode = 0;
				}
			}

		}
	}
}